In one conventional network data storage system, a server is coupled to a plurality of clients. The server includes a host processor coupled via a host chipset to a system memory. The host chipset comprises a host bridge/bus system that couples the host processor and system memory to a peripheral bus. The peripheral bus is coupled to a host bus adapter (HBA) that is coupled to a redundant array of inexpensive disks (RAID). The peripheral bus also is coupled to a network adapter that is physically coupled to the clients via network cabling.
In this conventional network data storage system, a client may issue, via a network cable, to the server a client request to store data in or retrieve data from the RAID. In response to the request, the server's network adapter transmits the request to the system memory via the peripheral bus and chipset, and, if the request is a request to store data in the RAID, the network adapter also transmits the data to the system memory via the peripheral bus and chipset. The memory then stores the request, and if transmitted to the memory by the network adapter, the data. The host processor retrieves the request from the system via the chipset, and in response to the request, the processor issues a request, via the chipset and peripheral bus, to the HBA to retrieve or store the data, as requested by the client request. If the request issued by the client is a request to store data in the RAID, the data is transmitted to HBA from the system memory via the chipset and the peripheral bus; the HBA then stores the data in the RAID. Conversely, if the request issued by the client is a request to retrieve data from the RAID, the HBA retrieves the data from the RAID, and transmits the data to the system memory via the peripheral bus and the chipset; thereafter, the data is transmitted to the network adapter from the system memory and the network adapter transmits the data to the client via the network cable.
Thus, in this conventional network data storage system, the performance of the client request to store data in or retrieve data from the RAID involves multiple transfers of the data via the peripheral bus and chipset. This may result in significant latency in completing the client request. Additionally, the processor, chipset, and HBA each comprise one or more respective integrated circuit chips. This may increase the design complexity of, and time involved in designing the server and network data storage system, and also may increase the cost and power consumption of the server. Furthermore, coupling the server and client together via network cabling may be time consuming, and the use of such cabling as the network communication media among the server and clients may limit and/or reduce the options available for the geographical locations of the clients and servers. Also, some clients derive particular utility from being portable; the use of such cabling as the network communication media in the network data storage system may reduce the portability, and therefore, the utility of such clients.
Although the following Detailed Description will proceed with reference being made to illustrative embodiments, many alternatives, modifications, and variations thereof will be apparent to those skilled in the art. Accordingly, it is intended that the claimed subject matter be viewed broadly, and be defined only as set forth in the accompanying claims.